The present invention is directed to bicycles and, more particularly, to a bicycle signal processing device that communicates data efficiently and reliably in the bicycling environment.
Many bicycle signal processing systems have been developed. A typical system often gathers and displays information related to bicycle speed, cadence, distance traveled and the like. Such systems usually include a magnet mounted to a wheel spoke, a magnet mounted to one of the pedal cranks, and magnet sensors mounted to the bicycle frame for sensing the passage of the magnets as the wheel and crank revolve. An electrical pulse is generated every time a magnet passes its associated sensor (e.g., once per wheel or crank revolution). The speed of the bicycle can be calculated based on the number of pulses received from the wheel sensor per unit of time and the circumference of the wheel. Similarly, the distance traveled can be calculated based on the number of pulses received over a length of time and the circumference of the wheel. The cadence can be calculated based on the number of pulses received from the crank sensor per unit of time. One or more switches ordinarily are provided for entering operating parameters (e.g., the wheel circumference), for selecting what information is displayed to the rider, and for starting and stopping various timers used for calculating the desired information.
More sophisticated systems have the ability to display information related to the state of the bicycle transmission or suspension. For example, some bicycles have a plurality of front sprockets that rotate with the pedal cranks, a plurality of rear sprockets that rotate with the rear wheel, and a chain that engages one of the front sprockets and one of the rear sprockets. A front derailleur is mounted to the bicycle frame for shifting the chain among the plurality of front sprockets, and a rear derailleur is mounted to the bicycle frame for shifting the chain among the plurality of rear sprockets. Manually operated switches or levers may control the front and rear derailleurs. Position sensors (e.g., potentiometers or contact sensors) are mounted to the switches or levers so that the front and rear sprockets currently engaged by the chain may be determined by the positions of the corresponding switches or levers. Such information may be displayed to the rider so that the rider may operate the transmission accordingly. Even more sophisticated systems use small electric motors to control the bicycle transmission. The motors may be controlled manually by the foregoing switches or levers, or automatically based on bicycle speed and/or cadence.
The switches, sensors and other electrical components of the signal processing system are often spaced apart from each other and are connected by wires. Sometimes the information provided by the various components is stored in one location and is communicated to other components for further processing. For example, information related to bicycle speed, crank rotation, distance traveled, etc. may be stored in a main processor, and subsets of that information may be communicated to a display processor so that the information may be formatted and displayed to the rider. Some of the displayed information may change relatively frequently (e.g., wheel speed or crank RPM), whereas other displayed information may change relatively infrequently (e.g., distance traveled or suspension settings). If a substantial amount of information is communicated from the main processor to the display processor, then information that changes frequently may not be communicated as often as it should be. As a result, the information displayed may be stale.
Another concern in bicycle signal processing systems is the integrity of the data communicated from one processing element to another processing element. Sometimes environmental factors such as radio frequency interference, moisture, etc. may corrupt the communicated information. In the example of information display noted above, this can result in inaccurate or nonsensical information being displayed to the rider.
Yet another concern in bicycle signal processing systems is the number of components needed to process the data. Again using the example noted above, if a large amount of information is communicated from the main processor to the display processor, then the display processor may need a substantial amount of memory to store the communicated information, either through a single large memory or several smaller memories. This can increase the cost and/or complexity of the device.
The present invention is directed to various features of a bicycle signal processing device that communicates data efficiently and reliably in the bicycling environment. In one embodiment of the present invention, a method of communicating data in a bicycle data processing system comprises the steps of communicating first information from a transmitter to a receiver, wherein the first information has a first rate of change; and communicating second information from the transmitter to the receiver a plurality of times, wherein the second information has a second rate of change that is greater than the first rate of change. This allows information that changes frequently to be communicated in a manner that reduces or eliminates the risk that the receiving data processing element operates with stale data.
In another embodiment of the present invention, a method of storing data in a bicycle data processing system comprises the steps of receiving a first data item a first time; storing a value of the first data item in a first memory; receiving the first data item a second time; comparing a value of the first data item received the first time with a value of the first data item received the second time; and storing the value of the first data item received the second time in the first memory when the value of the first data item received the first time substantially equals the value of the first data item received the second time. This method essentially double-checks the communicated data to enhance data integrity.